#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : redisUtil.py
# @Author  : Alisen
# @Date    : 2020/9/10
# @Desc    : redis操作封装方法

import redis

from utils.singleton_decorator import singleton


@singleton
class RedisUtil:

    def create_redis_connection(self):
        try:
            # 连接配置 - 请根据您的实际情况修改这些参数
            redis_client = redis.Redis(
                host='127.0.0.1',  # Redis 服务器地址
                port=6379,  # Redis 服务器端口
                db=0,  # 数据库编号
                password=None,  # 密码（如果没有设置密码，则为 None）
                decode_responses=True  # 将返回的字节数据解码为字符串
            )

            # 测试连接是否成功
            if redis_client.ping():
                print("成功连接到 Redis 服务器")
                return redis_client
            else:
                print("无法连接到 Redis 服务器")
                return None

        except redis.ConnectionError as e:
            print(f"连接错误: {e}")
            return None
        except Exception as e:
            print(f"发生错误: {e}")
            return None
